<xsl:when test="string-length($displayTitle)>0 and ($type='DocumentFromInternetSite' or $type='InternetSite' or $type='ElectronicSource')">
<xsl:call-template name="templ_prop_OpenQuote"/>
<xsl:value-of select="$displayTitle"/>
<xsl:call-template name="templ_prop_CloseQuote"/>
</xsl:when>
<xsl:when test="string-length($displayTitle)>0 and ($type='Book' or $type='BookSection' or $type='JournalArticle' or $type='ArticleInAPeriodical' or $type='ConferenceProceedings' or $type='Report')">
<xsl:call-template name = "ApplyItalicTitleNS">
<xsl:with-param name = "data">
<xsl:value-of select="$displayTitle"/>
</xsl:with-param>
</xsl:call-template>
</xsl:when>
<xsl:when test="string-length($displayTitle)>0">
<xsl:value-of select="$displayTitle"/>
</xsl:when>
</xsl:choose>
</xsl:if>
<xsl:if test="string-length($year) > 0">
<xsl:if test="string-length($displayAuthor) > 0 or string-length($displayTitle) > 0">
<xsl:if test ="b:SourceType='Performance' or b:SourceType='Art' or b:SourceType='Patent' or b:SourceType='ElectronicSource' or b:SourceType='Case' or b:SourceType='Misc'">
<xsl:if test="name()!='b:Main' and not(../../b:SourceType = 'Interview' and (string-length(../../b:Broadcaster) > 0 or string-length(../../b:BroadcastTitle) > 0) and (name() = 'b:Editor' or name() = 'b:Translator' or name() = 'b:Compiler'))">
<xsl:if test="name()!='b:Author' and not(name()='b:Title' and $Type='b:Citation') and not(../b:SourceType = 'Interview' and string-length(../b:Broadcaster) = 0 and string-length(../b:BroadcastTitle) = 0 and (name() = 'b:Station')) and not(../b:SourceType = 'Interview' and (string-length(../b:Broadcaster) > 0 or string-length(../b:BroadcastTitle) > 0) and (name() = 'b:Publisher'))">
<xsl:when test = "string-length($prop_TitleOpen) > 0 and string-length($prop_TitleClose) > 0 and string-length($prop_OpenQuote) > 0 and string-length($prop_CloseQuote) > 0 and
not(starts-with($data, $prop_TitleOpen) or (substring($data, string-length($data) - string-length($prop_TitleClose)) = $prop_TitleClose) or starts-with($data, $prop_OpenQuote) or (substring($data, string-length($data) - string-length($prop_CloseQuote)) = $prop_CloseQuote))">
<xsl:call-template name="templ_prop_TitleOpen"/>
<xsl:copy-of select="msxsl:node-set($data)" />
<xsl:call-template name="templ_prop_TitleClose"/>
</xsl:when>
<xsl:when test = "string-length($prop_TitleOpen) > 0 and string-length($prop_TitleClose) > 0 and
not(starts-with($data, $prop_TitleOpen) or (substring($data, string-length($data) - string-length($prop_TitleClose)) = $prop_TitleClose))">